/**
 * Author(s): xuming.Wong <xuming.Wong@gmail.com>
 */
#ifndef __PQ_ClientEnums_H__
#define __PQ_ClientEnums_H__
/*Enums here for the whole client(server don't share this file)
*/

/*client application running state
*/
enum RunningState
{
	Running_State_Unkow,

	//Server Change status
	Server_Change_Disconnect,//
	Server_Change_Connecting,
	Server_Change_Connect_Success,
	Server_Change_Sending_Connect,//sending handshake message
	Server_Change_Receive_Connect_Success,//allow to enter server
	Server_Change_Receive_Connect_Fail,

	//Enter game status
	Enter_Game_Connecting,//connect with game server
	Enter_Game_Ready,//enter game init
	Enter_Game_Requesting,
	Enter_Game_OK,
	Enter_Game_Fail,

	Running_State_Count

};

//Scene id - index into a scene array.(A scene is an integrated logic unit in our code.)
enum SceneId
{
	Scene_Unkown=0,
	Scene_Login,
	Scene_EnterGame,
	Scene_CharacterSelect,
	Scene_CharacterCreate,
	Scene_EnterWorld,
	Scene_GameWorld,
	Scene_ServerChange,//change server or connect to a new server

	Scene_Count
};

/*Index into the in32 array.
*/
enum Int32VarId
{
	Int32_LoginServerId,
	Int32_LoginAreaId,
	Int32_LoginMode,//first login

	Int32_Server_Port,
	//Add new just above this line
	Int32_Var_Count
};

/*Index into the String array.
*/
enum StringVarId
{
	String_Server_IP,//
	

	//Add new just above this line
	String_Var_Count
};

enum VideoMode
{
	
	//800 x 600 @ 32-bit colour
	VideoMode_800_600_32,

	//800 x 600 @ 16-bit colour
	VideoMode_800_600_16,

	//1024 x 768 @ 32-bit colour
	VideoMode_1024_768_32,
	//1024 x 768 @ 16-bit colour
	VideoMode_1024_768_16,
	
	//

};

#endif
